package com.devops.admin.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.devops.admin.model.DOSProjectVersion;
import com.devops.admin.po.DOSProjectVersionPhasePo;
import com.devops.admin.vo.DOSVersionOperationVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @ClassName DOSProjectVersionMapper
 * @Description TODO
 * @Author hepingguo
 * @Date 2022/6/17 09:39
 **/
@Mapper
public interface DOSProjectVersionMapper extends BaseMapper<DOSProjectVersion> {

    /**
     * 根据versionId查询单个版本的所有阶段状态信息
     * @param versionId
     * @return
     */
    List<DOSProjectVersionPhasePo> getProjectVersionPhaseList(Integer versionId);

    /**
     * 根据projectId查询单个项目所有的版本信息（含版本当前的阶段状态）
     * @param projectId
     * @return
     */
    List<DOSProjectVersionPhasePo> getProjectVersionList(Integer projectId,Integer phaseType,Page<DOSProjectVersionPhasePo> page);

    /**
     * @Author heyabo
     * @Description 查询待审核版本列表
     * @Date 16:15 2022/6/24
     * @Param [operation, page]
     * @return java.util.List<com.devops.admin.po.DOSProjectVersionPhasePo>
     **/
    List<DOSProjectVersionPhasePo> selectToReview(@Param("param") DOSVersionOperationVo operation, Page<DOSProjectVersionPhasePo> page);
}
